Method of adding a device to a network

ABSTRACT

A method of adding a device to an existing or new electrical or electronic automation or multimedia network. The invention facilitates adding a device to the network that can communicate using various protocols such as LonWorks, CEBus, X-10, etc. over media such as AC power line, IR, RF, twisted pair, optical fiber, etc. The method is a mechanism for adding a device to a system that can be used by an ordinary user of network capable electrical devices. The method comprises the steps an installer would perform including the handshaking that needs to occur between devices to accomplish the binding process. A Functional Profile for LonWorks networks is given as an example. This includes a Home Device profile that employs an automated explicit type messaging for all devices intended for use in a home environment. The invention includes adding to the device an install button and a visual indicator for status such as an LED. Alternatively, existing buttons and LEDs on the device may be used for installed and binding purposes. Other methods of binding can be employed by the use of wired or wireless handheld tools, remote controls, etc. Other interfaces and user feedback can be used such as touch screen, personal computers, cellular phones, PDAs, etc which can offer simple ‘virtual’ binding by the press of an icon versus the physical button on the device. The binding can be performed locally or remotely such as via LAN, WAN, Internet, etc.

REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application Ser.No. 60/116,832, filed Jan. 22, 1999, entitled “Apparatus For and Methodof Binding A Device to a Network Interoperable,” incorporated herein byreference.

FIELD OF THE INVENTION

The present invention relates generally to the field of home automationand more particularly to a method of adding (e.g., binding) one or moredevices to an electrical network such as the LonWorks automation networkor a multimedia network.

BACKGROUND OF THE INVENTION

Today, automation systems are being installed in more and morebuildings, including both new construction and in structures that arebeing rebuilt. The incentives for putting automation systems into abuilding are numerous. High on the list are reduced operating costs,more efficient use of energy, simplified control of building systems,ease of maintenance and of effecting changes to the systems. Facilitymanagers would prefer to install systems that can interoperate amongsteach other and also be able to make additions and changes to the systemin an efficient manner. Interoperability is defined by differentproducts, devices and systems for different tasks and developed bydifferent manufacturers, which can be linked together to form flexible,functional control networks.

An example of a typical automation system includes lighting controls,HVAC systems, security systems, fire alarm systems and motor drives allpossibly provided by different manufacturers. It is desirable if theseseparate disparate systems can communicate and operate with each other.

One of the major technological issues, however, that have hindered theproliferation of automation systems (such as LonWorks and others) in thehome, is that users feel (1) it takes too long, (2) that it alwaysrequires a computer and (3) that it is too complicated a process toinstall and setup a device. In particular, the part of the installationor configuration process that is most problematic is the bindingportion, where electrical devices are configured to be recognized byother entities on the network once they have been physically andelectrically installed.

The term ‘home automation’ has been around for more than 25 years, butthe average homeowner does know what this term means. Within the home,it is becoming more and more popular to utilize devices whichcommunication over a network or bus structure to autonomously controlvarious aspects of the home environment without the need for directinteraction by the inhabitants. As an example, an application might beto use a motion sensor to detect the presence of a car in the driveway.The system would then send a signal to the home controller thatsomething was present. In response, the controller may query thesecurity portion of the system to check if the visitor is not anintruder, and upon the absence of an alarm condition, would open thegarage door and change the status of the home from ‘away’ to ‘home’.Subsequently, the system may disarm one or more security zones on thepremises and has the lighting subsystem illuminate the driveway andwalkway lighting systems. The HVAC subsystem may turn the hot waterboiler on for an anticipated bath and turn on the air conditioner orheater in one or more rooms in the home. In addition, the entertainmentsystem may recognize the homeowner and play chosen music selections, orturn on the television and tune to a favorite channel.

This type of automation control requires explicit communication betweenthe various control, sensor and data devices in the home. The varioussubsystems that are required to communicate with each other includelighting, security, HVAC, entertainment and information/Internet, forexample. The complexity in setting up the system grows, as thecomplexity of the features installed in the home becomes moresophisticated. Unfortunately, setting up a system using currentlyavailable devices is not as simple as choosing the desired devices andwiring them into the network. Wiring the devices is relatively simpleand straightforward; the task of ensuring that devices know whom theyare, what they are supposed to do and how to talk to other devices onthe network is difficult.

Prior to installing a home automation system, the installer must (1)select suitable equipment and devices; (2) appraise the infrastructurerequirements, e.g., phase couplers, repeaters, filters, routers,gateways, etc.; (3) appraise the tools required to physically andelectrically install the devices; (4) appraise the tools to bind devicestogether; and (5) appraise the tools to set the functionality in eachdevice.

The expertise needed to perform all these tasks dictates who theinstaller can be and ultimately who the customer can be. As thetechnical expertise of the installer increases, the cost to employ thatinstaller increases, adding cost to the automation system. Currently,for proprietary networks, a specialized team or dealer network istrained to install the home automation products. For open protocols,often times a custom installer or system integrator is to integrate thevarious applications together. Here too, the individuals used to installand/or integrate the devices typically consist of a specialized team tointegrate the various subsystems together.

The average homeowner typically does not have technical knowledge andthus most of the products directed to homeowners plug into wallboxreceptacles or are battery operated. Communications, if present, isusually accomplished over AC wiring or via RF. If addressing isrequired, the devices come preconfigured, i.e., prebound, or the userinterface includes setting a position on a switch. Popular examples ofthis type of product include X-plug-in products.

The do-it-yourselfer (DIY) is considered to have a bit more technicalknowledge that the average homeowner. This person will install devicesin place of currently present AC receptacles, switches, etc. in thehome. They may modify the wiring within the home to accommodate thedevices to be installed. An electrician may be called in to accomplishthis. The user interface typically is very simple comprising of a fewswitches or perhaps a single computer program to setup and control thedevices.

An electrician or security installer or audio/video installer representsa medium expense professional installer who is familiar with both highvoltage and low voltage wiring and maybe with telecom wiring. They arenot necessarily computer literate and may be trained to use a handheldLCD display with a keyboard attached to install and configure thesystem.

The systems integrator/custom installer/home automation installer isproficient with computers and low voltage wiring. They have the requiredtechnical knowledge to install, configure and troubleshoot connectionproblems on both high voltage and low voltage wiring. They can work withdevices that do not have a physical user interface, but are configuredusing a software program on a PC that communications with the entirenetwork in the home. Examples include CEBus, LonWorks, Lutron HomeWorks,LiteTouch, Vantage, etc.

Prior art automation systems each have specific mechanisms of adding newdevices to the network. CEBus Home Plug and Play (Hpnp), for example,includes a recommended practice for the user interface which is to beused during configuration of newly installed or reconfigured devices.The recommended method, however, is very slow, tedious and confusing toa user. It also consumes considerable firmware overhead for each device.Groups are not supported and user feedback is not uniform permitting thesame indication to mean several different modes of operation.

LonWorks has the disadvantage of requiring an installation tool. Suchtools are relatively difficult to operate and are relatively expensive,placing them out of reach of the typical consumer.

The X-10 system does achieve quick configuration although it utilizes aprimitive, slow protocol. It does not have any provisions forcross-linked groups and is generally a one-way system, providing for alimited number of devices with limited functionality.

Thus it is desirable to be able to add a device, i.e., a networkedproduct, to an automation network system in a relatively simple manner.The configuration of a network product device should be quick and simpleas possible. It is desirable that a majority of users find theconfiguration process to be:

-   -   1. Fast—configuration should take less than one a minute per        device.    -   2. Simple—configuration should be easier than programming a VCR.    -   3. Uniform—manufacturers should use common user interfaces.    -   4. Reassuring—the user should be kept apprised of the current        point in the configuration process.    -   5. Clear—error codes should clearly indicate problems in a        uniform manner.    -   6. Inexpensive—the interface should not add much cost to the        device, and may share existing hardware such as LEDs and        switches.

SUMMARY OF THE INVENTION

The present invention is a method of adding (e.g., binding as in thecase of a LonWorks network) a device to an existing or new electricalautomation or multimedia network. The invention facilities adding adevice to the network that can communicate using various protocols suchas LonWorks, CEBus, X-10, etc. over media such as AC power line, IR, RF,twisted pair, optical fiber, etc. The method disclosed herein includes abinding technique that can be used by an installer of network capableelectrical devices. The method comprises the steps an installer wouldperform including the handshaking that needs to occur between devices toaccomplish the binding process. In addition, a Functional Profile forLonWorks networks is given as an example. This example illustrates aspecial Home Device profile that employs an automated explicit typemessaging for all devices intended for use in a home environment. Note,however, that it is not necessary for this Functional Profile to beemployed for operation of the present invention. This functional profilemay also have application in industrial and commercial settings as wellas the home. Note also that one skilled in the art can apply the methodof the present invention to network automation systems other thanLonWorks such as CEBus, BACNet, etc. The present invention hasapplications in products geared towards the home automation market aswell as products geared towards other areas such as the commercial,industrial, and utility markets.

It is intended that the invention provide a means for the electrician oraverage homeowner to perform the binding function on her/his own withoutthe need to call in a systems integrator or other highly trained andtypically costly professional. One embodiment comprises adding aninstall button and a visual indicator for status such as an LED to adevice. In operation, the user wires the device into the electricalnetwork and presses and holds a button until the LED lights or a buzzeris sounded indicating to the user that the device was added to thesystem. Alternatively, a pull switch, existing buttons and LEDs on thedevice may be used for installing and binding purposes. The button maybe pressed for extended periods, and the LED may flash in a uniquemanner.

Alternatively, a hand held tool that operates over any type of wirelessmedia such as IR or RF can be employed as well. The chief benefit ofusing a wireless media type is that devices installed in difficult toreach places can be bound in a simple manner. Alternatively, line ofsight or IR binding can be employed in combination with an AutoCADlayout of the facility. This functions to bind the devices together inaddition to having the binding information automatically saved in anAutoCAD file which identifies the physical location of the device withinthe building. This functionality may be useful for certain fire andsafety code requirements for certain systems.

Further, software icons can be created and placed on a touch screenequipped computer thus making the binding process much simpler such asduring the initial installation so as to verify that the devices werewired and installed correctly. The detailed binding of some devices maybe performed initially or may be performed after installation by a morehighly trained individual. In accordance with the invention, the resultsof the simple binding method are readable, importable to another deviceand are able to be used by higher end network management tools (if anyare present).

The present invention provides a means to connect electrical devices tothe network either by installing the device and subsequently pressing abutton; by installing the device and using voice activation to announcethat the device is ready to be bound to the system; or to plug in orwire the device and have it automatically recognize that power has beenapplied, communications is available and would then bind itselfautomatically to the network.

The invention also comprises software, optionally in the form ofembedded code or macro functions that perform the binding of the deviceto the network and also perform a series of preset or networkdownloadable functions. The device would then optionally provide avisual and/or audible indication (e.g., illumination of an LED) toindicate that the device was successfully added to the network.

The invention comprises means of providing a consistent user interfacefor the device and consistent feedback from the device. For simpledevices, for example, a momentary pushbutton may is employed on thedevices and the feedback to the user comprises an LED. This may be usedin low cost implementations of the invention.

Alternatively, various types of installation/management tools may beused to perform the binding function such as handheld or other types ofremote control units. These units may be connected locally or via anetwork. For example, the connection may be implemented using twistedpair, IR, RF, optical. Alternative implementations may use a touchscreen or PC and mouse combination whereby one simply clicks the icon onthe screen to bind one device to another. In this case, moresophisticated feedback can be provided to the user. One skilled in theart could integrate such a binding solution into any of the higher endnetwork management tools currently available such as LNS from Echelon,Peak Components package from ICELANG or other vendor's networkmanagement systems whereby the functional profile in the particulardevice(s) to be bound can be read.

It is important to note that in accordance with the present inventionthe process of binding a device to the network can be performed in avariety of ways. The binding can be performed locally via (1) means onthe device itself such as one or more pushbuttons or (2) an externalbinding tool connected to the device via a hardwired or wirelessconnection (e.g., IR, RF, optical, etc. Alternatively, the binding maybe performed remotely via a network such as a WAN, LAN, Internet, etc.In this case, the device is adapted to comprise the necessary means ofcommunicating over the specific type of network.

There is provided in accordance with the present invention a method ofadding a device to an automation or multimedia network, the methodcomprising the steps of binding the device as a first device to be boundwhen the device is the first device to be installed in the network,binding the device as an additional device to be bound when the deviceis not the first device to be installed in the network and binding thedevice as an existing device to be bound when the device was previouslyinstalled in the network.

There is also provided in accordance with the present invention a methodof installing and binding a device previously wired into an automationor multimedia network when the device is the first device to beinstalled in the network, the method comprising the steps of placing thedevice in a first-device installation mode of operation, assigning tothe device a domain ID having an associated length and which is not inuse by any other device on the network, assigning to the device a subnetnumber and a device ID number and generating an indication to indicatethat the installation of the device onto the network is complete.

The step of placing the device in a first-device installation mode ofoperation comprises pressing an holding a pushbutton switch on thedevice, receiving a command from a local management tool connecteddirectly to the device, receiving a command from a remote managementtool connected remotely over the network or setting a visual or audibleindication confirming that the device is in the installation mode ofoperation.

The step of assigning to the device a domain ID comprises the steps ofquerying the network using the assigned domain ID, listening for aresponse to the query and assigning a new domain ID different than theoriginal domain ID in the event a response is received within apredetermined time period. The step of assigning to the device a domainID comprises the steps of querying the network using the assigned domainID, listening for a response to the query, assigning a new domain IDdifferent than the original domain ID in the event a response isreceived within a predetermined time period and querying the networkusing the assigned domain ID at least an additional two times in theevent a response is not received within a predetermined time period.

There is further provided in accordance with the present invention amethod of installing and binding a new device previously wired into anautomation or multimedia network when the device is other than the firstdevice installed in the network, the method comprising the steps ofplacing the device in an additional-device installation mode ofoperation, placing address information of a previously installed andbound device onto the network, receiving the address information by thenew device to be installed and updating its domain and subnet addressinformation in accordance therewith, assigning a device ID number to thenew device, generating an indication to indicate that the installationof the new device onto the network is complete, installing and bindingzero or more additional new devices to the new device and installing andbinding zero or more existing devices to the new device.

The step of receiving the address information may comprise the steps ofwaiting for reception of the address information sent from thepreviously installed and bound device and generating an error indicationin the event no response is received after expiration of a predeterminedtime period. The step of assigning a device ID number to the new devicecomprises the steps of querying the network using the assigned device IDnumber, listening for a response to the query and assigning a new deviceID number different than the original device ID number in the event aresponse is received within a predetermined time period.

The step of assigning a device ID number to the new device may alsocomprise the steps of querying the network using the assigned device IDnumber, listening for a response to the query, assigning a new device IDnumber different than the original device ID number in the event aresponse is received within a predetermined time period and querying thenetwork using the assigned device ID number at least an additional twotimes in the event a response is not received within a predeterminedtime period.

The step of installing and binding additional new devices includes thesteps of placing the additional new device in an additional-deviceinstallation mode of operation, placing address information of the newdevice onto the network, receiving the address information sent by thenew device by the additional new device to be installed, updating domainand subnet address information in the additional new device inaccordance with address information received from the new device,assigning a device ID number to the additional new device and generatingan indication associated with the additional new device to indicate thatthe installation of the additional new device onto the network iscomplete.

The step of installing and binding an existing device includes the stepsof sending a message incorporating a first home profile from theexisting device to the new device, updating a second address tablewithin the new device in accordance with the first home profile, sendinga message incorporating a second home profile message from the newdevice to the existing device, updating a first address table within theexisting device in accordance with the second home profile, generatingan indication associated with the existing device to indicate that theinstallation and binding of the existing device is complete.

There is also provided in accordance with the present invention a methodof binding a first existing device into an automation or multimedianetwork, the method comprising the steps of placing the first existingdevice in an existing-device mode of operation, receiving at the firstexisting device a confirmation message generated by the second existingdevice, sending a first message incorporating a first home profile fromthe first existing device to the second existing device, updating asecond address table within the second existing device in accordancewith the first home profile, sending a second message incorporating asecond home profile message from the second existing device to the firstexisting device, updating a first address table within the firstexisting device in accordance with the second home profile, generatingan indication associated with the first existing device to indicate thatthe installation and binding of the first existing device is complete.

There is still further provided in accordance with the present inventiona method of adding a CEBus compatible device to a CEBus network, themethod comprising the steps of issuing a connect command to a context,determining whether the context is in identify house mode and indicatinghunting if it is not, hailing for a house code and subsequently for anunused unit address and indicating the occurrence of an error in theevent a unique address is not found within a predetermined time period.

There is also provided in accordance with the present invention a methodof adding a CEBus compatible device to a CEBus network, the methodcomprising the steps of receiving a connect command by a provider,hailing so as to determine whether another provider on the same housecode is already in connecting mode, indicating with the context that noother provider on the same house code is already in connecting mode,indicating the occurrence of an error in the event another provider onthe same house code is already in connecting mode, entering connect modeby the context for a specified period of time and answering connectionhails to house code with unit address zero corresponding to theprovider.

There is further provided in accordance with the present invention amethod of adding a CEBus compatible device to a CEBus network, themethod comprising the steps of receiving a connect command by alistener, hailing so as to search for a provider in connecting mode,swapping connection packets between the context and the connectingprovider, indicating ready if the swap was successful and indicating theoccurrence of an error in the event no provider is found, the connectionis rejected or the swap was not successful.

There is also provided in accordance with the present invention a methodof adding a first provider and listener context to a CEBus network, themethod comprising the steps of issuing a first-in-home context, issuingan identity house command, issuing a connect command to the providercontext and waiting for connecting indication, issuing connect commandto the listener context and waiting for a ready indication, repeatingthe step of issuing connect command to a listener context for eachadditional listener, issuing a stop command and indicating ready.

In addition, there is provided in accordance with the present inventiona method of adding additional devices and adding additional connectionsto a CEBus network, the method comprising the steps of issuing anidentity house command, issuing a connect command to provider contextand waiting for connecting indication, issuing connect command to thelistener context and waiting for ready indication, repeating the step ofissuing connect command to a listener context for each additionallistener, issuing a stop command to the new provider and to the devicein identifying house mode.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention is herein described, by way of example only, withreference to the accompanying drawings, wherein:

FIG. 1 is a front view illustration of a first example embodiment of thepresent invention including a LonWorks compatible receptacleincorporating a button and multiple status indicators;

FIG. 2 is a front view illustration of a second example embodiment ofthe present invention including a LonWorks compatible receptacleincorporating a button and a single status indicator;

FIG. 3 is a perspective view illustration of a third example embodimentof the present invention including a LonWorks compatible receptacleincorporating a button and a single status indicator;

FIG. 4 is a diagram illustrating a first example of a network managementtool constructed in accordance with the present invention comprising ahandheld computing device;

FIG. 5 is a diagram illustrating a second example of a networkmanagement tool constructed in accordance with the present inventioncomprising a handheld computing device;

FIG. 6 is a diagram illustrating a third example of a network managementtool constructed in accordance with the present invention comprising apersonal computer;

FIG. 7 is a diagram illustrating a remote installation tool interfacingwith a network management tool in accordance with the present invention;

FIG. 8A is a diagram illustrating a network management toolincorporating a magnetic card swipe means;

FIG. 8B is a diagram illustrating a network management toolincorporating a display screen, keyboard and magnetic card swipe means;

FIG. 8C is a diagram illustrating an example ‘install’ card including amagnetic strip and/or a machine-readable bar code;

FIG. 9A is a diagram illustrating an example handheld remote controlinstallation tool;

FIG. 9B is a diagram illustrating an example handheld remote controlinstallation tool wherein the binding related controls are exposed toview;

FIG. 10 is a block diagram illustrating in more detail an example deviceconstructed in accordance with the present invention;

FIG. 11 is a diagram illustrating a high level view of the variouspotential binding processes for the home, industrial or commercialenvironments;

FIGS. 12A and 12B are a flow diagram illustrating the first-in-homeprocess portion of the method of the present invention;

FIGS. 13A and 13B are a flow diagram illustrating the install and bindadditional devices process portion of the method of the presentinvention;

FIG. 14 is a flow diagram illustrating the add another new deviceprocess portion of the method of the present invention;

FIG. 15 is a flow diagram illustrating the binding existing devices andbinding processes portion of the method of the present invention;

FIG. 16 is a diagram illustrating the network variables andconfiguration parameters of the device object associated with aFunctional Profile for a Home Device;

FIG. 17 is a flow diagram illustrating the connect command portion ofthe CEBus compatible binding method of the present invention;

FIG. 18 is a flow diagram illustrating the portion of the CEBuscompatible binding method of the present invention covering providersreceiving the connect command;

FIG. 19 is a flow diagram illustrating the portion of the CEBuscompatible binding method of the present invention covering listenersreceiving the connect command;

FIG. 20 is a flow diagram illustrating the portion of the CEBuscompatible binding method of the present invention covering installationof the first provider and listener contexts; and

FIG. 21 is a flow diagram illustrating the portion of the CEBuscompatible binding method of the present invention covering installationof additional devices or adding additional connections.

DETAILED DESCRIPTION OF THE INVENTION

Notation Used Throughout The following notation is used throughout thisdocument. Term Definition AC Alternating Current BACNet BuildingAutomation and Control Network CEBus Consumer Electronics Bus DIY Do ItYourself DLL Dynamic Link Library EEPROM Electrically ErasableProgrammable Read Only Memory Hpnp Home Plug And Play HVAC HeatingVentilation Air Conditioning IC Integrated Circuit IR Infrared LAN LocalArea Network LCD Liquid Crystal Display LED Light Emitting Diode OSOperating System PC Personal Computer PDA Personal Digital Assistant RAMRandom Access Memory RF Radio Frequency ROM Read Only Memory SNVTStandard Network Variable Type USB Universal Serial Bus VCR VideoCassette Recorder WAN Wide Area Network

General Description

The present invention comprises a method of connecting electrical orelectronic devices to an automation or multimedia network such that theyare assigned an address and are configured so as to be recognized byother devices on the network. The automation network may be adapted forhome, industrial or commercial use. The device is added to the networkeither by installing the device and subsequently pressing a button; byinstalling the device and using voice activation to announce that thedevice is ready to be bound to the system; or by plugging in or wiringthe device to the network and having it automatically recognize thatpower has been applied, communications is available and then bindsitself automatically to the network.

Additionally, the device may also be added to the network through theuse of hand held or other types of tools that operate using any suitableinterface means, such as hardwired, twisted pair, wireless, IR or RF aswell as other types of user interfaces such as touch screens andcomputers, PDAs and other like devices. Devices can also be boundthrough other suitably modified audio/visual equipment such as atelevision, stereo, VCR or set top box. Further, a gateway or routerdevice may be used to bind a device. Yet still other binding methodsinclude the use of a smart ‘install card’ that is supplied with thedevice. The card could be disposable (i.e., designed for one time useonly) and would contain all appropriate data such as the device's NeuronID (i.e., the node ID) and device or program ID needed to perform thebinding operation.

The invention also comprises software, optionally in the form ofembedded code or macro functions that perform the binding of the deviceto the network and also perform a series of preset or networkdownloadable functions. The device would then illuminate an LED toindicate that the device was successfully added to the network.

A key feature of the binding method of the present invention is that itcan be utilized as a low cost alternative to currently available highercost binding solutions, such as a network management tool (PC based orotherwise). The invention functions to update the same address tablesinternal to the device in a similar manner as the currently availablehigher priced network management tools. In accordance with theinvention, the bindings created and stored in a particular device whenit is added to the network can be re-used in the future withconventional network management tools. A conventional network managementtool can access the address tables in the devices and retrieve thebinding information without the need to rebind the devices thus savingtime and costly setup charges. When a device is added to the network,the management tool can optionally choose to delete the existinginformation or to extract and use the information currently configuredin the device.

A front view illustration of a first example embodiment of the presentinvention including a button and multiple status indicators is shown inFIG. 1. The first example embodiment, generally referenced 10, comprisesan install button 12 and several indicators including an on/offindicator 13, a utility override indicator 14 and an install indicator15. Note that the receptacle is only shown as an example, as theinvention may be adapted to numerous other electrical and electronicdevices as well.

The indicators are each a different color for more easily distinguishingbetween them. The on/off indicator 13 can be green, for example, andwhen on indicates that the relay contacts are closed and when offindicates when the relay contacts are open. The utility overrideindicator 14 can be yellow, for example, and when on indicates that theutility is in control and when off indicates that the device is underlocal control. The install indicator 15 can be red, for example, andwhen off indicates that the device is configured, i.e., bound, to thenetwork and blinking indicates that the device is currently notconfigured to the network.

A front view illustration of a second example embodiment of the presentinvention including a button and a single status indicator is shown inFIG. 2. The second example embodiment, generally referenced 16,comprises a service pin 18 and a status indicator 17 that may comprisesan LED. Note that the receptacle is only shown as an example, as theinvention may be adapted to numerous other electrical and electronicdevices as well.

Products designed for LonWorks and CEBus networks typically alreadycomprise a status LED and a service pin. This reduces the effort neededto adapt the binding method of the present invention to existing networkdevices. The service pin and the status LED play different roles atdifferent times depending on the current device context, mode ofoperation, input received, etc. Thus, during the installation/bindingphase, the service pin functions as an install button. In addition, thestatus indicator may comprise a multicolored LED and may be turned onand off, blinked, flashed, etc. using a variety of patterns to indicateone or more specific status indications.

A perspective view illustration of a third example embodiment of thepresent invention including a LonWorks compatible receptacleincorporating a button and a single status indicator is shown in FIG. 3.The third example embodiment, generally referenced 320, comprises ahousing 322 constructed from any suitable material such as plastic, oneor more receptacles 324 and a vent 326. In addition, the devicecomprises one or more button switches 330 and one or more indicators 332that typically reside under a wall plate covering 328. Placing thebuttons and indicators under the wall plate elicits a conscious efforton the part of the user to change the settings of the device. Thus, thewall plate provides some security against accidental changes to theconfiguration of the device. The buttons may include an install button,utility override button, service pin button, etc. The indications mayinclude an on/off indicator, a utility override indicator, statusindicator and an install indicator. The indicators may function asdescribed in connection with the device of FIGS. 1 and 2.

The device may also comprise means for communication over a network soas to enable the device to be bound remotely via software means from anetwork management tool located on the network. Local binding may beperformed using the service pin and the status indicator (e.g., LED)which may play different roles at different times depending on thecurrent device context, mode of operation, input received, etc. Thus,during the installation/binding phase, the service pin functions as aninstall button. In addition, the status indicator may comprise amulticolored LED and may be turned on and off, blinked, flashed, etc.using a variety of patterns to indicate one or more specific statusindications.

As described previously, the binding method of the present invention mayinclude the use of a network management tool. The management tool maycomprise a variety of currently available commercial computing platformsthat are adapted to perform the methods of the present invention. Inparticular, the management tool may comprise one of the PDAs that are incommon use today. Several examples of these are presented below.

A diagram illustrating a first example of a network management toolconstructed in accordance with the present invention comprising ahandheld computing device is shown in FIG. 4. This example PDA compriseshousing 340, plurality of buttons 342, pointing tool 348, communicationsport 346 and display 344. The device executes a suitable operatingsystem such as Palm OS (3Com Corporation) or Windows CE (MicrosoftCorporation). The device may comprise any of the Palm PDAs manufacturedby 3Com Corporation, Santa Clara, Calif., adapted to perform the methodsof the present invention.

A diagram illustrating a second example of a network management toolconstructed in accordance with the present invention comprising ahandheld computing device is shown FIG. 5. This example PDA comprises ahousing 350, a plurality of buttons 356 (which are optional), a touchsensitive display 352 and a pen 354. In operation, a user uses the penas a pointing and selection tool. The device executes a suitableoperating system to drive the display and process user commands. Thedevice may comprise the Amity XP, manufactured by Mitsubishi MobileComputing, modified to perform the methods of the present invention.

In operation, the device may present one or more icons 358 on the touchsensitive display that represents elements of devices that can be bound.The user then selects one or more elements using the pen and touchsensitive screen to create a binding scenario for one or more devices.When the one or more devices are ready to be bound, the user selects thebind icon 359 to effect the binding.

A diagram illustrating a third example of a network management toolconstructed in accordance with the present invention comprising apersonal computer is shown in FIG. 6. This example management tool isbuilt on a conventional PC platform adapted to perform to perform thebinding method of the present invention. The tool comprises aconventional PC 365 including a processor, memory, keyboard 363,pointing device 361, display 360 and one or more I/O ports. The I/Oports comprise, for example, a bidirectional twisted pair communicationport 362 and/or a bidirectional infrared communications port 364. Thecommunication ports enable the tool to communication with devicesremotely over a network.

In operation, a user uses the pointing device 361 to perform the bindingoperation. The user selects one or more device elements represented asicons on the screen to be included in the binding operation. In oneembodiment, a floor plan of an office may be presented whereby thebinding element icons are superimposed over the floor plan. Thisfacilitates identifying the desired elements to bind. An example floorplan 366 is shown on the display and comprises the layout of an officecontaining a light switch 368 and fluorescent ballast 367. To effectuatethe binding of the light switch 368 to the fluorescent ballast 367, theuser simply selects the two elements by clicking on them and then clickson the bind icon 369. The binding is then carried out in accordance withthe binding method described in more detail hereinbelow. As describedpreviously, the binding tool may be connected locally or remotely via anetwork. In the latter case, the binding commands are transmitted overthe network via one of the communications I/O ports, e.g., the twistedpair port 362.

A diagram illustrating a remote installation tool interfacing with anetwork management station in accordance with the present invention isshown in FIG. 7. The network management tool 370 comprises a pluralityof keys and/or buttons 386, display 384 and a bidirectionalcommunication port 390 (for example, an IR port is shown). The remote 20installation tool 372 communicates with the network management stationvia the IR port 380. The installation tool comprises a plurality ofbuttons 382 for performing the install/binding process.

The installation tool also communicates with one or more devices to beinstalled into the automation or multimedia network. Examplesillustrated include a multisensor device 374, an on/off dimmer withdisplay 376 and a ceiling mount occupancy detector 378. To permit theinstallation tool to bind these devices into the network, these devicescan be adapted to communicate via IR with the installation tool.Alternatively, they can be adapted to communicate with the managementstation over a network, e.g., twisted pair, RF, etc.

An alternative installation scheme to those described above is toinclude an ‘install card’ with each device whereby the informationrequired for adding the device to the network is included in the card. Adiagram illustrating a network management tool incorporating a magneticcard swipe means is shown in FIG. 8A. A diagram illustrating a networkmanagement tool incorporating a display screen, keyboard and magneticcard swipe means is shown in FIG. 8B. A diagram illustrating an example‘install’ card including a magnetic strip and/or a machine-readable barcode is shown in FIG. 8C.

The network management controller 390 comprises a plurality of buttons,keyboard or keypad 396, a display 394 and a card reader 392. Analternative network management tool is shown FIG. 8B wherein the tool400 comprises a plurality of buttons 402, keyboard or keypad 406,display 404 and a card reader 408. The keyboard 406 is adapted to dropdown when in use and can be folded against the display when not in useto protect the display 404.

The install card, generally referenced 410, comprises the informationrequired for adding the device to the network in machine-readable form.The information may be placed, for example, on a magnetic strip 414 oras a one or two-dimensional bar code 412. The install card would beincluded with each device. The install card contains all the necessaryinformation required to add the device to the network. Such informationincludes but is not limited to the Neuron ID and program ID of thedevice, assuming a LonWorks type network. The network management tools390, 400 are adapted to read the information encoded onto the installcard. In the case when the install card comprises a magnetic strip, thenetwork management tools 390, 400 are equipped with a magnetic cardreader or magnetic swipe slot 392, 408, respectively.

Alternatively, the management tools are configured with bard codescanners in the case when the binding information is encoded as a barcode on the install card. Optionally, the install card may comprise asmart card. In this case, the management tools comprise means forreading smart cards.

The displays 394, 404 of each management tool are part of the userinterface of each tool. The display may comprise any suitable typedisplay such as an LCD. Optionally, the display may comprise a touchscreen surface permitting users to enter data directly by touching thesurface of the display. Further, the management tools may be fixed inlocation or can be mobile handheld units used by the installer (e.g., ahomeowner).

A diagram illustrating an example handheld remote control installationtool is shown in FIG. 9A. The handheld installation tool shown may beused as the remote installation tool 372 shown in FIG. 7. The remoteinstallation, generally referenced 420, comprises a plurality of keysand buttons 424 and a communications I/O port 422. For example, thecommunications port may comprise a USB, IR, RF or optical port. Theexample shown herein includes a USB port permitting the handheld deviceto easily interface with a PC or other network management tool.Depending on the application, a portion of the buttons or keys can bededicated to the specific application. For example, considering amultimedia network, the handheld tool would comprise button forcontrolling video and audio sources, such as channel buttons, volumecontrol, channel control, fast forward, play, rewind, etc.

In addition to the application specific buttons, the handheld tool alsocomprises a plurality of installation related buttons/keys. This isillustrated in FIG. 9B wherein the binding related controls are exposedto view. The binding related controls comprise a plurality of buttonsand/or keys 426 for use during installation of a device to the networkand for use during regular operation. Via the USB interface port, one ormore keys of the handheld tool may be programmed. Buttons may beprogrammed to perform commands, such as retrieve status, security,display, turn on, turn off, all on, all off, execute custom application,etc.

The structure of a typical device suitable for use with the methods ofthe present invention will now be described in more detail. A blockdiagram illustrating in more detail an example device constructed inaccordance with the present invention is shown in FIG. 10. The device,generally referenced 430, can be adapted for various applications, oneof which being lighting controls which is the example presentedhereinbelow. Note, however, that one skilled in the art could apply thegeneral structure of the device described herein to numerous other typesof devices that target different electrical applications. The deviceshown in this example is adapted to control incandescent lighting loadsor any other load that can be controlled via a relay. Devices adapted tofunction in other applications can also be constructed and arecontemplated to be within the scope of this invention.

The device 430 comprises a controller 432 to which are connected variouscomponents including clock circuitry 450, reset circuit 451,communications transceiver 438, one or more pushbutton type switches 458and relay driver circuit 434.

The controller comprises a suitable processor such as a microprocessoror microcomputer. For instance, in the context of a LonWorks compatiblenetwork, the controller may comprise a Neuron 3120 or 3150microcontroller manufactured by Motorola, Schaumberg, Ill. More detailedinformation on the Neuron chips can be found in the Motorola Databook:“LonWorks Technology Device Data,” Rev. 3, 1997. Memory connected to thecontroller includes RAM 452, ROM 454 for firmware program storage andEEPROM 456 for storing downloadable software and various constants andparameters used by the device.

A power supply (not shown) functions to supply the various voltagesneeded by the internal circuitry of the device, e.g., 5 V (V_(CC)), 15V, 24 VAC, etc. In addition to the internal power needs, the powersupply may provide a supply voltage for external devices to use. Forexample, 15 V can be provided to a plurality of external devices forpowering their circuitry. This reduces the complexity of externaldevices such as sensors, thus reducing their cost by eliminating therequirement of having a power supply onboard.

A clock circuit 450 provides the clock signals required by thecontroller 432 and the remaining circuitry. The clock circuit maycomprise one or more crystal oscillators for providing a stablereference clock signal. A reset circuit 451 provides a power up resetsignal to the controller 432.

In the case of LonWorks compatible networks, the device 430 comprises aservice pin to which is connected a momentary push button switch 444 andservice indicator 442. The switch 444 is connected between ground andthe cathode of the LED 442. The anode of the LED is connected to V_(CC)via resister 440. A zener diode 446 clamps the voltage on the servicepin to a predetermined level. The switch 444 is connected to the servicepin via a series resister 448. The service pin on the controllerfunctions as both an input and an output. The controller 432 is adaptedto detect the closure of the switch 444 and to perform service handlingin response thereto. A more detailed description of the service pin andits associated internal processing can be found in the Motorola Databook“LonWorks Technology Device Data” referenced above.

The device 432 interoperates with other devices on the network. Thecommunication means comprises a communication transceiver 438 thatinterfaces the controller 432 to the network. The communicationstransceiver may comprise any suitable communication or network interfacemeans. The choice of network, e.g., LonWorks, CEBus, etc. in addition tothe choice of media, determines the requirements for the communicationstransceiver. Using the LonWorks network as an example, thecommunications transceiver may comprise the FTT-10A twisted pairtransceiver manufactured by Echelon Corp, Palo Alto, Calif. Thistransceiver comprises the necessary components to interface thecontroller to a twisted pair network. Transmit data from the controlleris input to the transceiver which functions to encode and process thedata for placement onto the twisted pair cable. In addition, datareceived from the twisted pair wiring is processed and decoded andoutput to the controller. Transceivers for other types of media such aspower line carrier and coaxial, for example, can also be used.

As described above, the control unit also comprises means forcontrolling various lighting loads. In the example shown here, thedevice may control any electrical device that can be controlled via arelay. Relay loads are controlled by the relay driver circuit 100, via aRELAY signal generated by the controller.

In addition, external devices that do not implement a protocol can betied into the network via the Non-Protocol I/O connection to thecontroller. Thus, non-protocol I/O devices can be controlled and canshare information with other protocol enabled devices. This enables lowcost non-protocol devices to be tied into the network thus providing anoptimized system solution.

The device is added to the network using the binding method of thepresent invention. The binding may be effectuated using various meanssuch as the one or more pushbutton switches 458 coupled to thecontroller through I/O ports or by software means by a networkmanagement tool located remotely on the network. In the latter case, thebinding is effected via messages transmitted over the network andreceived by the controller via the communications receiver 438.

LonWorks Automated Binding Process

A diagram illustrating a high level view of the various potentialbinding processes for the home, industrial or commercial environments isshown in FIG. 11. For illustration purposes, the binding method 20 ispresented within the context of a home environment as the number ofusers that can potentially enjoy the advantages of the present inventionare the greatest in this group. The binding method presented, however,is suitable for use in industrial and commercial environments as well.

The binding method is divided into three categories. The first categoryincludes the first-in-home process 22 whereby a device to be installedand bound is the first device to be placed in the home network. Thesecond category is the installation and binding of additional devices 24which also includes the binding process 26 itself. The third categoryincludes the method of binding existing devices 28. Each process will bediscussed in more detail beginning with the first-in-home process 22.

It is important to note that in accordance with the present inventionthe process of binding a device to the network can be performed in avariety of ways. The binding can be performed locally via (1) means onthe device itself such as one or more pushbuttons or (2) an externalbinding tool connected to the device via a hardwired or wirelessconnection (e.g., IR, RF, optical, etc. Alternatively, the binding maybe performed remotely via a network such as a WAN, LAN, Internet, etc.In this case, the device is adapted to comprise the necessary means ofcommunicating over the specific type of network.

A flow diagram illustrating the first-in-home process portion of themethod of the present invention is shown in FIGS. 12A and 12B.Initially, a user obtains a networked product and wires it into the homenetwork (electrical and communications). Once installed, the userpresses and holds the install pin for a period of time, e.g., 3 seconds(step 30). It is important to note that throughout this document areference to pressing a pushbutton switch denotes either (1) pressing aconventional pushbutton type switch, (2) actuating any suitablemechanical or electromechanical type switch, (3) conveying theequivalent of a button press via software means, (4) conveying theequivalent of a button press via network means, or (5) any combinationof the above.

The confirm indicator is then set to yellow and steady on so as to alertthe user that the device, i.e., networked device, has confirmed theinput from the user and that the device is in the installation mode ofoperation. (step 32). It is then checked to see whether the device waspreviously installed (step 34). If so, an error indicator is set to redand blinking three times in a row so as to signify that the user hasperformed an illegal function (step 36). Subsequently, the devicereturns to normal operating conditions.

If the device was not previously installed, a busy indicator is set togreen and flashing (step 38) so as to signify that the mode is valid andis in the process of performing the requested function (step 40). Innext step, the device randomly selects a domain length and a domain ID(step 42). The device then queries the network on the selected domain(step 44). If a response is received (step 46) it is checked whether apredetermined period of time has been exceeded (step 48). The steps ofquerying are repeated for a finite amount of time, e.g., 5 seconds. Ifthe allotted time has not been exceeded, the device selects anotherdomain length and domain ID (step 42) and starts the query again (step44).

If the maximum time period has been exceeded an error indication is setto red and a solid on to alert the user that the binding process cannotcontinue and that user intervention is required (step 49). In this case,the device does not return to normal operating condition.

If no response is received from the query, the device queries thenetwork a second time using the selected domain length and domain IDwithin a time period, e.g., 0.5 second (step 50). If a response arrives(step 52) the query process starts again. If no response is received,the domain is valid and the domain is set within the device (step 54). ASubnet and a Device Number are then randomly chosen (step 56). Theindicator is set to green and solid on to indicate that the process iscomplete (step 58). The device then waits two seconds (step 60) beforereturning to normal operating procedure.

A flow diagram illustrating the install and bind additional devicesprocess portion of the method of the present invention is shown in FIGS.13A and 13B. The first step is the user pressing the install pin on anew device (step 70). The confirm indicator is set to yellow and solidon to signify that the device has confirmed the command from the user(step 72). The device then checks to see if it was previously installed(step 74). If so, the device requires binding and control is transferredto the binding process (step 76) (flow diagram in FIG. 15). If thedevice was not previously installed, a busy indicator is set to greenand flashing to signify that the mode is valid and that the function isbeing performed (step 78).

The device then waits for a message to be received from another device.At this point, the user presses the install pin on an existing devicesomewhere within the network (step 79). This must happen within alimited time period, e.g., 3 minutes. The existing device then placesaddress information onto the network and its confirmation indicator isset to yellow and solid on (step 80). If the device being installed doesnot receive the message (step 81), an error indication is set to red andblinking three times in a row so as to alert the user that an illegalfunction has been performed (step 82). The device then returns to normaloperating condition.

If the device being installed from the existing device receives amessage, the device then updates its domain and subnet addressinformation in accordance with the information received from theexisting device (step 84). The device then randomly selects anotherdevice ID (step 86) and starts a query (step 88). If a response isreceived (step 90) it is checked whether a predetermined period of timehas been exceeded (step 92). The steps of querying are repeated for afinite amount of time, e.g., 5 seconds. If the allotted time has notbeen exceeded, the device selects another device ID (step 86) and startsthe query again (step 88).

If the maximum time period has been exceeded an error indication is setto red and a solid on to alert the user that the binding process cannotcontinue, a valid device ID cannot be found and that user interventionis required (step 93). In this case, the device does not return tonormal operating condition.

If no response is received from the query, the device queries thenetwork a second time using the selected domain length and domain IDwithin a time period, e.g., 0.5 second (step 94). If a response arrives(step 96) the query process starts again with step 86. If no response isreceived, the device ID is valid and the device ID is set within thedevice (step 98). The indicator is set to green and solid on to indicatethat the process is complete (step 99).

The device then waits a time period, e.g., three minutes, for a messagefrom either an existing device or another new device (step 100). The actof pressing the install pin on either another new device or an existingdevice sets the confirm indicator thereon to yellow and solid on. If amessage is received, the device checks the message to determine whetherit is a new device (step 102) or an existing device (step 106). If themessage is from a new device, the process to add another new device isperformed (step 104) (see flow diagram in FIG. 14). If the message isfrom an existing device, the binding process is performed (step 108)(see flow diagram in FIG. 15).

If no message is received within three minutes, an error indication isset to red and blinking three times in a row so as to alert the userthat an illegal function has been performed (step 110). The device thenreturns to normal operating condition.

A flow diagram illustrating the add another new device process portionof the method of the present invention is shown in FIG. 14. The addanother new device process begins with the busy indicator set to greenand flashing to signify that the mode is valid and is in the process ofperforming the requested function (step 120). The newly installed device(that now exists) sends address information to the new uninstalleddevice (step 122). The new uninstalled device updates its domain andsubnet address information in accordance with the information receivedfrom the existing device (step 124). The new uninstalled device thenrandomly selects a device ID (step 126) and queries the network for thedevice ID (step 128).

If a response is received (step 130) it is checked whether apredetermined period of time has been exceeded (step 132). The steps ofquerying are repeated for a finite amount of time, e.g., 5 seconds. Ifthe allotted time has not been exceeded, the device selects anotherdevice ID (step 126) and starts the query again (step 128).

If the maximum time period has been exceeded an error indication is setto red and a solid on to alert the user that the binding process cannotcontinue, a valid device ID cannot be found and that user interventionis required (step 133). In this case, the device does not return tonormal operating condition.

If no response is received from the query, the device queries thenetwork a second time using the selected domain length and domain IDwithin a time period, e.g., 0.5 second (step 134). If a response arrives(step 136) the query process starts again with step 126. If no responseis received, the device ID is valid and the device ID is set within thedevice (step 138). The indicator is set to green and solid on toindicate that the process is complete (step 139). The binding process isthen performed (step 140) (see flow diagram in FIG. 15).

A flow diagram illustrating the binding existing devices and bindingprocesses portion of the method of the present invention is shown inFIG. 15. The first step is a user presses the install pin on an existingdevice (step 150). The confirm indication is set to yellow and solid onto signify that the device has confirmed the input from the user (step152). The device then checks to see whether it was previously installed(step 154). If the device was previously installed, a busy indicator isset to green and flashing to signify that the mode is valid and is inthe process of performing the requested function (step 158). If thedevice was not previously installed, the device is a new device and mustbe installed first. Control is passed to the install and bind additionaldevices method (step 156) (see flow diagram in FIGS. 13A and 13B).

If the device was previously installed, the device then waits for theinstall pin on another existing device to be pressed (step 160). Thedevice waits for a certain period of time, e.g., 3 minutes. If nomessage is received within the time period (step 162), the errorindicator is set to red and blinks three times in a row repeatedly tosignify that the user has performed an illegal function (step 164). Thedevice then returns to normal operating procedures.

If the user presses the install pin on another existing device withinthree minutes, the device then performs the binding process as follows.The binding process begins with the devices sending a Home Profilemessage to each other with the option to bind all application variables,otherwise only the mandatory variables are bound (step 166). Next, thedevices update their respective network variable address tables inaccordance with the optional Home Profile received (step 168). If anobject does not have Home Profile explicit messaging, then the methoddefaults to binding only the mandatory variables. The device beinginstalled then indicates a completed process by setting its indicator togreen and solid on (step 170). The device then waits two seconds beforereturning to normal operating procedure (step 172).

A diagram illustrating the network variables and configurationparameters of the device object associated with a Functional Profile fora Home Device is shown in FIG. 16. This Device Object, generallyreferenced 180, includes the mandatory and optional network variables,optional configuration properties and optional explicit messages thatmake up a Home Profile for binding all variables. The device objectshown is suitable for use with LonWorks compatible devices and networks.It is appreciated that one skilled in the art could derive analogousdevice objects for other systems as well.

The mandatory network variables comprise an input Request 182 and outputStatus 190. The optional network variables comprise an input Time Set184, input File Request 186, input File Position 188, output Alarm,output File Status 194 and output File Directory. Optional configurationparameters 198 comprise Network configuration and Maximum Send Time.Optional explicit messages 200 comprise a Home Profile explicit messageto bind all network variables (i.e., mandatory, optional ormanufacturer's optional).

In accordance with the invention, not all the devices in an automationor multimedia network need perform the method of the present invention.Devices that do perform the binding method of the invention caninteroperate with devices that do not. Devices that do not have thebinding capability of the invention can bind utilizing traditionalbinding techniques.

CEBus Automated Binding Process

The automated binding method described hereinbelow is suitable for usewith CEBus compatible devices and networks. All devices must be able tocommunicate bidirectionally, as the protocol described below requiredthat all providers verify that messages get through to connectedlisteners. Broadcast messages are used only to speed up the end-to-endresponse time. It is suggested that all DLL layer communications beperformed using unacknowledged service. This permits the DLL interfaceIC to be as inexpensive as possible. In addition, ‘group’ addresses arenot limited by the DLL IC, since all received packets are passed to thehost processor.

Each context within each device is assigned a unique 16-bit contextnumber. The number effectively replaces the unit address. Thus, if adevice contains 3 provider contexts and 2 listener contexts, the devicewill response to 5 different unit addresses, in addition to the CEBusbroadcast address 0 and optionally the Hpnp broadcast address FFFF. Theuniversal context can be referenced in all context numbers. Theuniversal context holds a list of all context numbers the devicecontains.

Group broadcasts from a provider context in a device are sent to thecontext number of the provider's context. During connection procedures(formerly termed binding) a listener records the context number of eachprovider context which it will obey. Similarly, a provider contextrecords the context number of each listener context it will control. Atrun time, the provider context makes a broadcast to itself when amessage is to be sent to the entire group. All the listener contexts inthe group act upon the message. Immediately after the broadcast, theprovider context sends an individual message to each listener context inturn, incurring that each listener has received the message. Thistechnique ensures both fast response time and communications integrity.

The user interface of the method will now be described in more detail.Note that the user interface presented below is oriented towards homeautomation products. One skilled in the art could, however, adapt theuser interface for use with other systems as well, e.g., LonWorks or anyother bidirectional home automation protocol.

A single button and single LED or other indicator are needed (see FIG.2) for each independent functions in the device. In cases where severaldifferent functions exist in a single device, the single button and LEDmay be shared, provided a clear means of selecting which function theycurrently apply to is provided. Thus, in one embodiment, a five buttonlighting panel with 5 indicator lamps may have an additional 5 buttonsand 5 LEDs, or may have a switch labeled .Hpnp/Run, allowing theexisting buttons and indicators to be used in Hpnp mode. Alternatively,the five-button panel device may comprise an additional button and LEDalong with a thumbwheel to indicate which button they apply to.

A long push is required to activate the interface on any device. A longpush lasts a relatively long time, e.g., 8 seconds or longer. After 8seconds has elapsed, the LED becomes steadily lit if it was previouslyout of blinking, or vice versa if it was previously lit. This indicationremains only until the button is released, whereupon the indicationbecomes one of the indications listed below.

Other pushes have no minimum duration, but polling the button at 25msec. or faster is sufficient. Release must last 200 msec. or longerbefore the software can detect another push. To allow for multi-pushcommands, 2 seconds of release indicates that the user has finishedentering the multi-push command.

The commands and indications of the method will now be described in moredetail. Note that since the user applies to a context rather than adevice, the description below, refers to contexts and not devices inconnection with commands or the display of indications. Table 1 belowlists the commands and Table 2 lists the indications.

TABLE 1 Commands Command Description Long Push Activate interface 1 PushStop 2 Pushes Identify House 3 Pushes Connect 4 Pushes First In House 5Pushes Factory Defaults

TABLE 2 Indications Indication Description Slow Blink Out Of Box FastBlink Error Double Blink Identifying House Triple Blink Connecting QuadBlink Hunting Lit In House Out Ready

The STOP command aborts any command being executed. It is also used tocancel an ERROR indication. After the STOP command, the context returnsto its normal state. This state will either be OUT OF BOX, IN HOUSE orREADY.

The FACTORY DEFAULTS command resets the non-volatile memory in thecontext to its OUT OF BOX state. There is no ERROR indication possiblefor this command. This command must be used to remove listener contextnumbers from a provider's connection list, or to remove provider contextnumbers from a listener's connection list.

The FIRST IN HOUSE command causes the context to choose a new house codeat random and to ensure that no device exists on that house code. Whilehunting for a house code, the context indicates HUNTING. When a newhouse code is chosen, the context selects a unit address at random, thenindicates IN HOUSE. ERROR is indicated if the context was not in its OUTOF BOX state when the command was issued, or if hunting for a new housecode fails after 10 minutes of attempts.

The IDENTIFY HOUSE command instructs the context to provide its housecode to any context that asks for it. This state is indicated byIDENTIFYING HOUSE and continues until 10 minutes have passed duringwhich no other context asks for the house code. In identify house mode,the context answers house code hails on house code 0 unit address 0. TheIDENTIFY HOUSE command causes an ERROR indication if: (1) the contexthas not learned its house code or unit address or (2) another context isalready supplying the house code. To determine whether another contextis answering house code hails, the context receiving the command hailsthree times. Note that to handle a house containing only one providerand one listener, provider contexts must respond to house code hailswhile in connecting mode. In such cases, CONNECTING is indicated.

The CONNECT command tells the context to join the group being formed.The group can have only a single provider, but may have one or morelisteners. Note that the CONNECT command always adds a connection. Aconnection is removed using the FACTORY DEFAULTS command. The CONNECTcommand is first issued to the provider (which enters CONNECTING mode),then to each listener in turn (which succeed or fail in a short time,e.g., seconds).

SLOW BLINK indicates a context is in its OUT OF BOX state. The LED is on500 msec. and off 500 msec. This indication is shown except when thecontext has knowledge of both its house code and unit address.

FAST BLINK indicates an error has occurred with the last command. TheLED is on 125 msec. and off 125 msec. This indication persists foreveruntil the context is powered down, reset or another command is entered.

DOUBLE BLINK indicates the context is in IDENTIFYING HOUSE mode. ThisLED is on 250 msec. and out 250 msec, repeats then is out for 1 second.This indication (also mode) remains up until 10 minutes passes duringwhich no other context asks for the house code. Note that if a contextin identifying house mode is then placed into connecting mode,CONNECTING alone is indicated.

TRIPLE BLINK indicates that the context is in CONNECTING mode. The LEDis on 250 msec and out 250 msec, repeating both twice, then is out for 1second. Connecting mode only applies to providers. This indication (alsomode) remains up until 10 minutes have passed during which no listenersask to connect to the context.

QUADRUPLE BLINK indicates that the context is in HUNTING mode. The LEDis on 250 msec. and out 250 msec, repeating both thrice and then out for1 second. Hunting mode applies to both providers and listeners whenevereither attempts to find a house code supplier or to choose their ownunit address. It also applies to listeners when they are trying to finda connecting provider.

The LED being illuminated indicates that the context is in IN HOUSEmode. This means that the context knows both its house code and its unitaddress.

The LED being off indicates that the context is in READY mode. Thismeans that the context knows its house code and unit address and hasalso established at least one connection to a provider or a listener.

A flow diagram illustrating the CONNECT command portion of the bindingmethod of the present invention is shown in FIG. 17. When the CONNECTcommand is issued to any context, the first step is to check whether thecontext is in identify house mode (step 210). If so, control passes tostep 224. If not, the context indicates HUNTING (step 212). The contextthen hails for the house code up to three times (step 214). Hail packetsare sent to the house code 0 unit address 0. ERROR is indicated if nocontext supplies a house code (step 216) or if the house code differsfrom its own (step 226).

If the context does not know its unit address (step 218), the contexthunts for an unused unit address by choosing addresses at random andhailing up to three times to determine if it is use (step 220). If aunique address is not found (step 222) within 10 minutes of hunting,ERROR is indicated (step 226). If the context has no room remaining inits non-volatile connection memory (step 224), ERROR is indicated (step226). Note that is the context does not know both its house code andunit address, it is not ‘in the house’ and must both while connecting.

A flow diagram illustrating the portion of the binding method of thepresent invention covering providers receiving the CONNECT command isshown in FIG. 18. For providers receiving the CONNECT command (step 230)the following is performed. The context hails up to three times (step232) to determine whether another provider on this house code is alreadyin connecting mode (step 234). If so, ERROR is indicated (step 242). Ifnot, context indicates CONNECTING (step 236).

The context then enters connecting mode, remaining there until 10minutes have passed wherein no other context asks to connect to it (step238). In connecting mode, the provider answers connection hails to itshouse code with unit address 0 (step 240).

A flow diagram illustrating the portion of the binding method of thepresent invention covering listeners receiving the CONNECT command isshown in FIG. 19. For listeners receiving the CONNECT command (step 250)the context hails up to three times to find a provider in connectingmode (step 252). Hailing packets are sent to the context's own housecode, with unit address 0 (step 254). If no provider is found (step 256)or if the provider rejects the potential connection in the hail packet(step 258), ERROR is indicated (step 266).

Once it is determined that the provider will accept the connection, thecontext swaps connection packets with the connecting provider (step260). READY is indicated (step 264) by the listener context if theconnection packets are swapped successfully (step 262). ERROR isindicated (step 266) if the connection packets fail three times or arerejected by the provider (step 262).

A flow diagram illustrating the portion of the binding method of thepresent invention covering installation of the first provider andlistener contexts is shown in FIG. 20. This method and the method ofFIG. 21 use as an illustrative example, a light switch that functions asa provider context and a light fixture that functions as a listenercontext. To install the first light switch and light fixture, thefollowing is performed. First, issue the FIRST IN HOUSE command to thelight switch (step 270). Wait for the switch to indicate IN HOUSE (step272).

Issue the IDENTIFY HOUSE command to the switch (step 274). Wait for theswitch to indicate IDENTIFYING HOUSE (step 276). Issue the CONNECTcommand to the switch (step 278). Wait for the switch to indicateCONNECTING (step 280). Issue the CONNECT command to the fixture (step282). Wait for the fixture to indicate READY (step 284). If there areadditional listeners, i.e., fixtures, to be controlled by the switch(step 286) repeat steps 282 and 284. Once there are no additionallisteners, issue the STOP command to the switch or wait 10 minutes (step288). The switch will then indicate READY (step 290).

A flow diagram illustrating the portion of the binding method of thepresent invention covering installation of additional devices or addingadditional connections is shown in FIG. 21. To install additional lightswitches and light fixtures, or to add additional connections to alreadyconnected switches or fixtures, the following is performed. It is firstdetermined whether there is any device in IDENTIFYING HOUSE mode (step300). If not, the IDENTIFYING HOUSE command is issued to an alreadyinstalled switch or provider (step 302). Wait for the switch or providerto indicate IDENTIFYING HOUSE (step 304).

Issue the CONNECT command to the new switch (step 306) and wait for itto indicate CONNECTING (step 308). Issue the CONNECT command to the newfixture (step 310) and wait for it to indicate READY (step 312). Ifthere are additional listeners, i.e., new fixtures, to be controlled bythe new switch (step 314) repeat steps 310 and 312 for each one.

Once there are no additional devices to install, issue the STOP commandto the new switch or wait 10 minutes (step 316) at which time it willindicate READY (step 318). If there are no additional devices toinstall, issue the STOP command to the device in IDENTIFYING HOUSE modeor wait 10 minutes (step 320). It will show its previous indicationREADY or IN HOUSE (step 322).

It is intended that the appended claims cover all such features andadvantages of the invention that fall within the spirit and scope of thepresent invention. As numerous modifications and changes will readilyoccur to those skilled in the art, it is intended that the invention notbe limited to the limited number of embodiments described herein.Accordingly, it will be appreciated that all suitable variations,modifications and equivalents may be resorted to, falling within thespirit and scope of the present invention.

1. A method of installing and binding a device previously wired into anautomation or multimedia network when said device is the first device tobe installed in said network, said method comprising the steps of:placing said device in a first-device installation mode of operation;transmitting a command to the device confirming that the device is inthe installation mode of operation; selecting by said device a domain IDhaving an associated length; transmitting said domain ID selected bysaid device to determine that it is not in use by any other device onsaid network; selecting by said device a subnet number and a device IDnumber; and generating an indication to indicate that the installationof said device onto said network is complete.
 2. The method according toclaim 1, wherein said step of placing said device in a first deviceinstallation mode of operation comprises pressing and holding a pushbutton switch on said device.
 3. The method according to claim 1,wherein said step of placing said device in a first-device installationmode of operation comprises receiving a command from a local managementtool connected directly to said device.
 4. The method according to claim1, wherein said step of placing said device is a first-deviceinstallation mode of operation comprises receiving a command from aremote management tool connected remotely over said network.
 5. Themethod according to claim 1, wherein said step of placing said device ina first-device installation mode of operation comprises setting a visualor audible indication confirming that said device is in saidinstallation mode of operation.
 6. The method according to claim 1,further comprising the step of generating an error indication if saiddevice was previously installed.
 7. The method according to claim 1,wherein said step of assigning to said device a domain ID comprises thesteps of: querying said network using said assigned domain ID; listeningfor a response to said query; and selecting by the device a new domainID different than the first domain ID selected by the device in theevent a response is received within a predetermined time period.
 8. Themethod according to claim 1, wherein said step of assigning to saiddevice a domain ID comprises the steps of: querying said network usingsaid domain ID selected by said device; listening for a response to saidquery; selecting a new domain ID by the device that is different thanthe first selected domain ID in the event a response is received withina predetermined time period; and querying said network using saidselected domain ID at least on additional two times in the event aresponse is not received within a predetermined time period.
 9. Themethod according to claim 1, wherein said step of assigning a device IDnumber to said new device comprises the step of: querying said networkusing said assigned device ID number selected by said device; listeningfor a response to said query; selecting by said device ID numberdifferent than the first selected device ID number in the event aresponse is received within a predetermined time period; and queryingsaid network using said last selected device ID number at least anadditional two times in the event a response is not received within apredetermined time period.